dxp-ux

(0 reviews)

GET BillingAccountByID (TMF666)

This operation retrieves a billing account entity used by:

  1. PR - billingAccountID (or) MSISDN (or) client accountId (or) BAN-CAN.
  2. PA - BillingAccountId.

URL

http://[localhost]:[port]/dxp-ux/v1/{businessId}/billingAccount/{id}

URL PARAMS

nametypedescriptionrequired
businessIdstring2 letter ISO 3166 country code (TT, BB, JM, PA, PR etc.) identifying the business unit. Expected one is "PR"-Puerto RicoY
idstringTo retrieve 'account' information provide Billing Account Number or msisdn To retrieve 'balance' information provide account number. Example: msisdn: 17874047209,billingAccountNumber: 33541396-33542750Y

Note:

  1. For PR, To retrieve 'balance' information need to pass 'targetSystem'.
  2. To retrieve 'account' information need to pass 'lob'.
namevaluedescriptionrequired
client_idstringThe client_id identifying the channel.Y
client_secretstringPassword associated with the client_id.Y
X-Correlation-IDstringAn identifier for the current call chain that can be used to tie together log entries on multiple layers (e.g. client, server, mainframe). This identifier must be designed to be unique across all applications. Note - Mule default behavior creates a sample x-correlation-id field if value is not passed from client, API will use this value in case value is not passed in API requestY
channelIdstringExpected value APPY (PR), N(PA)
lobStringEnum: PREPAID, POSTPAID,FIXED
Expected value for PR: PREPAID, POSTPAID
Expected value for PA: FIXED, POSTPAID
Y (PR), N(PA)
targetSystemStringExpected value "aria".Y (PR), N(PA)

Query Parameters

Note: For PR, To retrieve 'account' information need to pass 'extendedCharacteristics.name', 'extendedCharacteristics.value', 'type'.

Namevaluedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
extendedCharacteristics.namestringExpected value is sourceSystemY(PR), N/A(PA)
extendedCharacteristics.valuestringExpected value is DigitalY(PR), N/A(PA)
typestringNeed to pass 'billingAccountNumber' or 'msisdn'Y(PR), N/A(PA)

Data Model - Response:

nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
idstringBilling Account Number
(For PR: Salesforce Record Id)
Y (PA) N(PR)
hrefstringURL reference of the billing account in SalesforceN/A(PA) N(PR)
billablebooleanThe billability of the accountY(PA) N/A(PR)
accountTypestringA categorization of an account, Possible Value - RESY (PA) N(PR)
ratingTypestringpayment type of the billing account and the options are:Prepaid PostpaidN/A(PA) N(PR)
descriptionstringcustomerType description.
For PR: name of the account owner
Y (PA) N(PR)
namestringname of the billing accountY (PA) N(PR)
statestringContains the lifecycle state.Y (PA) N(PR)
paymentStatusstringThe account's delinquency status or payment status.Y (PA) N(PR)
lastModifiedstringDate of last modification of the accountN/A (PA) N(PR)
autopayEnabledstringindicator of the Auto Pay enabledN/A (PA) N(PR)
extendedCharacteristicsarrayA list of characteristics that characterize this billingAccountN/A (PA) N(PR)
extendedCharacteristics.namestringName of the characteristic Example: methodType,token,externalPaymentMethodIdentifierN/A (PA) N(PR)
extendedCharacteristics.valuestringThe value of the characteristic Example: BrainTreeToken,639338417,2N/A (PA) N(PR)
accountBalancearrayBalances linked to the accountY (PA) N(PR)
accountBalance.balanceTypestringType of the balanceY (PA) N(PR)
accountBalance.amountobjectBalance amountY (PA) N(PR)
accountBalance.amount.unitstringUSD, PABY (PA) N(PR)
accountBalance.amount.valuenumberA positive floating point numberY (PA) N(PR)
accountBalance.validForobjectA period, either as a deadline (endDateTime only) a startDateTime only, or bothN (PA) N(PR)
accountBalance.validFor.endDateTimedatetime or stringEnd of the time period, using ISO 8601 format
Note for PA:This field type is string
N (PA) N(PR)
accountBalance.validFor.startDateTimedatetime or stringStart of the period, using ISO 8601 format. If you define a start, you must also define an end
Note for PA:This field type is string
N (PA) N(PR)
accountRelationshiparraySignificant connection between accounts. For instance an aggregating account for a list of shop branches each having its billing accountN (PA, PR)
accountRelationship.relationshipTypestringType of relationship.N/A (PA), N(PR)
accountRelationship.accountobjectAn account may be a party account or a financial account.N/A (PA), N(PR)
accountRelationship.account.idstringUnique identifier Id of the EntityDescriptionRef.N/A (PA), N(PR)
accountRelationship.account.descriptionstringDetailed description of the EntityDescriptionRefN/A (PA), N(PR)
accountRelationship.account.namestringName of the account.N/A (PA), N(PR)
accountRelationship.account.@typestringWhen sub-classing, this defines the sub-class entity nameN/A (PA), N(PR)
accountRelationship.validFor.endDateTimedatetimeEnd of the time period, using ISO 8601 formatN/A (PA), N(PR)
accountRelationship.validFor.startDateTimedatetimeStart of the period, using ISO 8601 format. If you define a start, you must also define an endN/A (PA), N(PR)
billStructureobjectThe structure of the bill for party accounts (billing or settlement).Y (PA, PR)
billStructure.cycleSpecificationobjectAn attachment by value or by reference.Y (PA, PR)
billStructure.cycleSpecification.idstringUnique identifier of the billing cycle specificationY (PA, PR)
billStructure.cycleSpecification.billingDayIntegerCustomer's billing cycle starts or ends.Y (PA, PR)
billStructure.cycleSpecification.paymentDueDatedateTime or stringAn offset of a payment due date. The offset is expressed as number of days with regard to the start of the BillingPeriod
Note for PA:This field type is string
Y (PA, PR)
billStructure.cycleSpecification.namestringExpected value "monthly Billing" "bi-monthly billing"N/A (PA), N(PR)
billStructure.cycleSpecification.dateShiftstringAn offset of a billing/settlement date. The offset is expressed as number of days with regard to the start of the billing/settlement period.Y (PA, PR)
billStructure.cycleSpecification.frequencystringPossible values are "monthly" or "bi-monthly billing".N/A (PA), N(PR)
billStructure.presentationMedia.namestringPossible values are "Mail","Email, "eBill enabled"Y (PA), N(PR)
billStructure.presentationMedia.idstringUnique identifier of the bill presentation mediaY (PA), N(PR)
contactarrayContact point for a given account and accessed via some contact medium.Y (PA) N(PR)
contact.namestringname of the contactY (PA) N(PR)
contact.partyRoleTypestringIdentifies what kind of party role type is linked to the contact Ex: OwnerY (PA) N(PR)
contact.contactMediumarrayIndicates the contact medium that could be used to contact the party. Possible values areY (PA) N(PR)
contact.contactMedium.mediumTypestringType of the contact medium, possible values are: "BillingAddress", "Phone" or "PostalAddress".Y (PA) N(PR)
contact.contactMedium.preferredbooleanIf true, it indicates that it is the preferred contact medium. Ex: true,falseY (PA) N(PR)
contact.contactMedium.characteristicobjectAny additional characteristic(s) of this contact medium.Y (PA) N(PR)
contact.contactMedium.characteristic.contactTypestringFor PR: if mediumType = "Phone" then possible values are "Home","Business"Y (PA) N(PR)
contact.contactMedium.characteristic.citystringThe cityY (PA) N(PR)
contact.contactMedium.characteristic.countrystringThe countryY (PA) N(PR)
contact.contactMedium.characteristic.postCodestringPostcodeY (PA) N(PR)
contact.contactMedium.characteristic.stateOrProvincestringState or provinceY (PA) N(PR)
contact.contactMedium.characteristic.street1stringDescribes the streetY (PA) N(PR)
contact.contactMedium.characteristic.street2stringDescribes the streetY (PA) N/A(PR)
contact.contactMedium.characteristic.phoneNumberstringphone number of the customerY (PA) N(PR)
contact.contactMedium.characteristic.emailAddressstringemail address of the customerY (PA) N(PR)
contact.relatedPartyobjectRelated Entity referenceN/A (PA) N(PR)
contact.relatedParty.idstringlast 4 digits of SSN numberN/A (PA) N(PR)
contact.relatedParty.namestringname of the customer accountN/A (PA) N(PR)
contact.relatedParty.@typestringhard-coded as "relatedParty"N/A (PA) N(PR)
creditLimitobjectThe maximum amount of money that may be charged to an accountY (PA) N(PR)
creditLimit.unitstringUSD, PABY (PA) N(PR)
creditLimit.valueintegervalueY (PA) N(PR)
defaultPaymentMethodobjectThe maximum amount of money that may be charged on an accountY (PA) N(PR)
defaultPaymentMethod.idstringUnique identifier ID of the default payment method. Possible values are "C" "E" ""Y (PA) N(PR)
defaultPaymentMethod.namestringPayment Method Name.
Possible values for PR: "Credit Card" "EFT" "Non Default Payment Method"
Possible values for PA: "Electronic", "Cash"
Y (PA) N(PR)
financialAccountobjectAccountReceivable reference. An account of money owed by a party to another entity in exchange for goods or services that have been delivered or used. An account receivable aggregates the amounts of one or more party accounts (billing or settlement) owned by a given party.Y (PA) N(PR)
financialAccount.idstringAccountNumber of the financial account.
For PR: Hard coded as "2063"
Y (PA) N(PR)
financialAccount.accountBalanceobjectBalances linked to the accountN/A (PA) N(PR)
financialAccount.accountBalance.balanceTypestringType of the balance ; DelinquentBalance, LastPaymentAmount, ReceivableBalanceN/A (PA) N(PR)
financialAccount.accountBalance.amountstringBalance amountN/A (PA) N(PR)
financialAccount.accountBalance.amount.unitstringUSD, PABN/A (PA) N(PR)
financialAccount.accountBalance.validForobjectA period, either as a deadline (endDateTime only) a startDateTime only, or bothN/A (PA) N(PR)
financialAccount.accountBalance.validFor.endDateTimedatetimeEnd of the time period, using ISO 8601 formatN/A (PA) N(PR)
financialAccount.accountBalance.validFor.startDateTimedatetimestart of the time periodN/A (PA) N(PR)
financialAccount.@referredTypestringpossible value is "financialAccount"Y (PA) N(PR)
paymentPlanarrayA list of payment plansY (PA) N(PR)
paymentPlan.paymentFrequencystringFrequency of the payments, such as monthly and bimonthlyN/A (PA) N(PR)
paymentPlan.planTypestringstatus of autopsy. possible values are "Auto Pay Enable" , "Auto Pay DisableY (PA) N(PR)
paymentPlan.prioritynumberPriority of the payment plan. possible values are 0, 1Y (PA) N(PR)
paymentPlan.@Typestringthis defines the sub-class entity nameY (PA) N/A(PR)
paymentPlan.statusstringStatus of the payment planY (PA) N/A(PR)
paymentPlan.paymentMethodobjectA payment method referenceN/A (PA) N(PR)
paymentPlan.paymentMethod.idstringinternal reference id of the payment method in SalesforceN/A (PA) N(PR)
paymentPlan.extendedCharacteristicsarrayA list of characteristics that characterize the payment method detailsN/A (PA) N(PR)
paymentPlan.extendedCharacteristics.namestringName of the characteristicN/A (PA) N(PR)
paymentPlan.extendedCharacteristics.valuestringValue of the characteristicN/A (PA) N(PR)
characteristicarrayDescribes a given characteristic of an object or entity through a name/value pair.N/A (PA) N(PR)
characteristics.namestringName of the characteristic."LocationId" "DunningGroup" "DelinquencyDays" "autoPayDate "DebitDay" "CreditScore"N/A (PA) N(PR)
characteristics.valuestringValue of the characteristicN/A (PA) N(PR)
relatedPartyarrayRelated Entity referenceY (PA), N(PR)
relatedParty.idstringCustomer IdY (PA), N(PR)
relatedParty.namestringCustomer nameY (PA), N(PR)
relatedParty.rolestringrole of the party. "customer"Y (PA), N(PR)
relatedParty.@baseTypestringWhen sub-classing, this defines the super-classY (PA), N/A(PR)
relatedParty.@typestringWhen sub-classing, this defines the sub-class entity nameY (PA), N/A(PR)
relatedParty.@referredTypestringReference type. "customer"Y (PA), N(PR)
relatedParty.characteristics.namestringName of the characteristic.Y (PA), N(PR)
relatedParty.characteristics.valueanyValue of the characteristicY (PA), N(PR)
relatedParty.characteristics.valueTypestringValueType of the characteristicY (PA), N(PR)
@typestringType of the reference. "BillingAccount"Y (PA), N(PR)
sourceBSSstringBSS sytem from which the details are retrievedY (PA), N/A(PR)
RelatedParty Characteristic subResource - dataModel
characteristic nametypedescriptionrequired
(mandatory-Y, optional-N, Not applicable- N/A)
examples
DocumentTypearrayIt provides the identity typeN (PA)PA: {
"name": "DocumentType",
"value": "C"
}
DocumentNumberstringIndicated the identity numberN (PA)PA: {
"name": "DocumentNumber",
"value": "4-248-586"
}
EmailstringCustomer's email addressN (PA)PA: {
"name": "Email",
"value": "argelis.samudio@cwpanama.com"
}
GenderstringIndicates the gender of customerN (PA)PA: {
"name": "Gender",
"value": "F"
}
TitlestringProvides the SalutationN (PA)PA: {
"name": "Title",
"value": "Sra",
"valueType": "string"
}
FirstNamestringIndicates the first name of customerN (PA)PA: {
"name": "FirstName",
"value": "Argelis",
"valueType": "string"
}
LastNamestringIndicates the last name of customerN (PA)PA: {
"name": "LastName",
"value": "Samudio Besada",
"valueType": "string"
}
OtherNamestringIndicates the other name of customerN (PA)PA: {
"name": "OtherName",
"value": "Del Carmen",
"valueType": "string"
}
CompanyNamestringIndicates the company name if the the acccount type is business.N (PA)PA: {
"name": "CompanyName",
"value": "**",
"valueType": "string"
}
Date-Of-Birthstringdate of birth of customerN (PA)PA: {
"name": "Date-Of-Birth",
"value": "1973-05-23T00:00:00-5:00",
"valueType": "string"
}
Customer Identityarraythis is an array with all the customer identity details.N (PA)PA: {
"name": "Customer Identity",
"valueType": "array",
"value": [
{
"DocumentType": "C",
"DocumentNumber": "4-248-586",
"DocumentDescription": "Cedula"
}
]
}
Customer Identity Characteristic value Array- SubResource Model
nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)examples
DocumentTypestringThe type of documentN (PA)PA: {
"DocumentType": "C",
"DocumentNumber": "4-248-586",
"DocumentDescription": "Cedula"
}
DocumentNumberstringDocument ID/ Number.N (PA)PA: {
"DocumentType": "C",
"DocumentNumber": "4-248-586",
"DocumentDescription": "Cedula"
}
DocumentDescriptionstringdescription of the documentN (PA)PA: {
"DocumentType": "C",
"DocumentNumber": "4-248-586",
"DocumentDescription": "Cedula"
}
Expected values for CSG FIXED Auto Pay

For paymentStatus below are expected fields Delinquency Status or Payment Status

Delinquency Status:

Mule Field ValueBSS Field ValueDescription
NORMAL“” or nullNORMAL
CCVOLUNTARY DISC
EENON-PAY DISC
AAOPEN NP EQPTACT
FFOPEN NP EQPT FT
PPPEND NP SVC RES
SSPND CHG SERV WO
TTPPV RESTRICTED
UUDWNGRD-SVCS
VVOPEN VOL DISC
WWOPEN NP EQPTDIS
ZZCHARGED OFF

Payment Status

Mule Field ValueBSS Field ValueDescription
NORMAL“” or nullNORMAL
SSSuspended
BBBalance is less than EFT minimum debit amount
DDDebit Error
EEPrenote Error
GGEFT debit had been sent to ACH processor
PPPrenote Error
WWWaiting

Key considerations

PA Implementation:
  1. Account details will be retrieved from Liberate by providing accountNumber as an input.
  2. Sending LOB as header is not required as this resource deals with the account.
  3. Possible Identity types for Liberate PA are C -Cedula, PP-Pasaporte, SS-Seguro Social, V-Cuenta Vieja.
  4. Possible values for PaymentStatus are "In Arrears", "Active".
  5. Possible values for state:

    • W-Activo
    • D-Defecto
    • C-Cesado
    • E-Cierre
    • F-Cerrada
    • S-Especial
    • B-Llamada Prohibida
  6. For all the dateTime fields

    • Any datetime before 1908-04-22 will show offset -05:18
    • Any datetime on or after 1908-04-22 will show offset -05:00
PR Implementation:
FIXED (CSG):
  1. From this operation we can fetch Auto Pay is enabled or disabled, auto-pay date and day, Delinquency status, payment status and payment method EFT or Card.
  2. In the response, if PaymentPlan.planType is AutoPay Enable, AutoPay Date can be displayed in the extended Characteristics else AutoPay Date cannot be displayed.
PREPAID & POSTPAID:
  1. Account details and autopay status are retrieved from Salesforce using billingAccountNumber.
  2. Account details for a PREPAID account are retrieved from Salesforce using MSISDN.
  3. Account details and autopay status are retrieved from Salesforce using MSISDN.
  4. The client account balances are retrieved from Aria.
DC markets.

Account status will be derived using the offers linked to account. if any of the Suspended offers are present in account, then the account state would be considered as "Suspended". Below are the offers list.

OFFER_IDDISPLAY_VALUE
51002454CUR Wireline Barring
51006038CUR Wireless Barring
51006040CUR Wireless CHCO Barring
51006047SXM Wireless Barring
51006143CUR Data Connectivity Barring
51007682CUR Wireless CHCO Barring up to 10 Members
51007683CUR Wireless CHCO Barring 11 to 50 Members
51007688BES Wireless CHCO Barring up to 10 Members
51009190CUR Wireless Disconnection Fees for Collections
51009192BES Wireless Disconnection Fees for Collections
51009694SXM Wireless Disconnection Fees for Collections

Reviews